package com.tjcu.dao;

import com.tjcu.entity.City;
import com.tjcu.entity.Mark;
import com.tjcu.entity.Student;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author 王恒杰
 * @version 1.0
 * @date 2021/11/3 11:00
 * @email 1078993387@qq.com
 * @Address 天津
 * @Description:
 */
public interface StudentDao {
    /**
     * 展示学生页面
     * studentAndClazzAndCityAndGroupAndMark简写：SCCGMt
     * @return
     */
    public List selectSCCGMByPage(@Param("page")Integer page,@Param("rows") Integer rows);

    /**
     * 查询当前的总页数
     * @return
     */
    public Integer selectTotalCount();
    /**
     * 添加学生信息
     * @param student
     */
    public void insertStudent(Student student);


    /**
     * 删除学生信息
     * @param sid
     */
    public void deleteStudent(Integer sid);

    /**
     *  删除标签中的学生id及相关联的标签id
     * @param sid
     */
    public void deleteSm(Integer sid);

    /**
     * 根据不同条件进行查询
     * @param student
     * @return
     */
    public List selectByNameOrPhoneOrQQ(Student student);

    /**
     *查询班级名+小组名
     * @return
     */
    public List selectCnameAndGName();

    /**
     *查询标签
     * @return
     */
    public List<Mark> selectMarkName(String type);

    /**
     *查询城市
     * @return
     */
    public List<City> selectCityName();

    /**
     * 添加学生id和标签id到m_s_fk表
     * @param sid
     * @param mid
     */
    public void insertSm(@Param("mid")Integer mid,@Param("sid") Integer sid);

    /**
     * 通过id查询学生人数进行数据回显
     * @param sid
     * @return
     */
    public Student selectStudentById(Integer sid);

    /**
     * 更新学生信息
     * @param student
     */
    public void updateStudent(Student student);
}
